GNU General Public License version 3 (GPLv3)
Slothious 2009

//--------------------------------------------------------------------------------------------------------------------------------------

[HOW TO USE THIS CODE]
Feel free to use these mutators, which were coded from scratch by Slothious(P.A.) - aka:=iNi=Deliverance.
These are being released to the Rune public in hopes that more people will create some new work for this great game in the near future.

These mutators can be used individually, or they can be built into a new mutator by placing all the code to 1 mutator(placing all code into 1 file).

ALL aOS-Mutators are seperate downloads, so be sure to download all of the aOS(AllOpenSource) Mutators you think you will need.
Where are all of these aOS-Mutators, and what are the file names?

Where to download these aOS-Mutators:
http://ini-honor-trophies.com
http://rune-library.com

ALL aOS-Mutators to date:
	aOS-ClassChoices
	aOS-RunesChoices
	aOS-SlothsScoreboards
	aOS-RegenChoices
	aOS-ZTargetControls
	aOS-SlothsRandomWeapons

I have also created an ALL in 1 ServerHub for Rune!

Where to download this aOS-Hub:
	http://ini-honor-trophies.com
	http://rune-library.com

aOS-Hub filename: 
	aOS-SlothsOpenSource

//--------------------------------------------------------------------------------------------------------------------------------------

[HOW TO CREATE YOUR OWN MUTATOR USING THIS CODE]

SETTING UP TO LOAD THE PACKAGES INTO THE EDITOR:
1st-open your Rune\System directory and open the Rune.ini file (using notepad, or any other simple text editor)
2nd-Locate the section of the Rune.ini file that looks like this: 

[Editor.EditorEngine]
-- go down to where you see the 'EditPackages=' that looks like this:
EditPackages=RuneI
EditPackages=RMenu
EditPackages=RuneServerAdmin

Place the line or lines of code you want for the mutator you are loading in the editor below EditPackages=RuneServerAdmin.
We will be using the [SlothsZTarget.SlothsZTarget] & [RunesChoices.RunesChoices] in this tutorial of how to use this code.

[Editor.EditorEngine]
EditPackages=RuneI
EditPackages=RMenu
EditPackages=RuneServerAdmin
EditPackages=SlothsZTarget	<---place the package name here
EditPackages=RunesChoices	<---place the package name here

THAT IS ALL YOU NEED TO DO TO LOAD THOSE '2' PACKAGES INTO THE EDITOR... NOW WE LOAD THE EDITOR AND CREATE OUR OWN PACKAGE!


[HOW TO CREATE YOUR OWN MUTATOR(PACKAGE) USING THIS CODE IN THE EDITOR]
I will be using MyMutator as the example here...
REPLACE 'MyMutator' with your package name

Open the editor, and go to the upper right column
-Set the Browse to 'Classes'

You will see a list of classes that are built into Rune here, and many classes are expandible
Click the ' - ' next to the class name to expand it and see the child/subclasses.

First expand '-Info'
Second expand '-Mutator'

After you expand mutator you will see all the listed mutators for Rune, as well as the (2) we just loaded here.
Click on the word 'Mutator' to highlite it
go to bottom right column and click on the 'New' button

in this little window it is asking for 2 things
New actor class name: MyMutator	<-----change this to the name of your mutator
Package name: RuneI  		<-----change this to the name of your mutator
EX:
New actor class name: MyMutator
Package name: MyMutator  	<---DO NOT LEAVE THIS AS RuneI	

click the 'Create this actor class' button

You should now see a 'Blue' window with some 'Green', 'LightBlue', & 'White' writting in it.

It should say something like this:
//=============================================================================
// MyMutator.
//=============================================================================
class MyMutator expands Mutator;

//------------------1st mutator imort------------------

After you have this you are ready to import the code from the package I created for you.
Go to the right column and locate(mutator subclasses) 'RunesChoices' -- double click on it.

You should now be looking at all the code on that mutator file...
copy all this code from the 'RunesChoices' window EXCEPT...DO NOT COPY THE TOP AREA...
//=============================================================================
// RunesChoices.
//=============================================================================
class RunesChoices expands Mutator config(RunesChoices);

---COPY EVERYTHING BELOW THIS!!!

paste it into you new mutator window.

---NOTE: THE TOP AREA WHERE THE CLASS INFO IS- YOU WILL SEE YOURs IS MISSING THE CONFIG AT THE END.
MAKE IT THE SAME NAME AS YOUR MUTATOR NAME

EX: class MyMutator expands Mutator config(MyMutator);

After you have everything in order here
Click on your Mutator(MyMutator) in the right column to highlite it
go to the upper menubar to 'Script'
Click - Compile Changed Scripts

You should see all the code in your window change from a green color to some 'Green', 'LightBlue', & 'White' writting in it.

If you don't see this there will be an error code in the bar at the top of your mutator window.
It will describe what the issue is that needs to be fixed.

If it compiled the scripts without any errors...
click 'Save' --- bottom of right column

//------------------2nd mutator imort------------------

After you have this you are ready to import the code from the other package I created for you.
Go to the right column and locate(mutator subclasses) 'SlothsZTarget' -- double click on it.

You should now be looking at all the code on that mutator file...
copy the variable section of code from the 'SlothsZTarget' window 

IT IS VERY IMPORTANT HOW YOU PLACE THE CODE...
VARIABLES MUST BE AT THE TOP TO LET THE CODE IN THE MUTATOR KNOW WHAT TYPE OF VARIABLE IT IS & THE VARIABLE NAME BEING USED.
KEEP ALL VARIABLES AT THE TOP... THEN PLACE THE MUTAOTR CODE BELOW IT(FUNCTIONS/EVENTS/ETC.)
//~variables
var config bool bDisableZTarget;
var config bool bAnnounceWarning;
var config bool bDisabledAttempt;
var config bool bAnnouncementSound;
var config bool bDeathDrumroll;
Var() Sound DisabledAttemptSound;
Var() Sound AnnouncementSound;
Var() Sound DeathDrumrollSound;


paste it into you new mutator window with the other vaiables from the Runes Mutator code. It should look like this
EX:
//------------------------------------------
//---1st layer Rune Check (if this is set to true it will continue to 2nd layer Rune check
var Config bool bRunes; 
//---2nd layer Rune check
var Config bool bRemoveRuneOfPower;
var Config bool bRemoveRuneOfPowerRefill;
var Config bool bRemoveRuneOfStrength;
var Config bool bRemoveRuneOfStrengthRefill;
var Config bool bRemoveRuneOfHealth;
//---Respawntime
var config int RunesRespawnTime;
//------------------------------------------
//~variables
var config bool bDisableZTarget;
var config bool bAnnounceWarning;
var config bool bDisabledAttempt;
var config bool bAnnouncementSound;
var config bool bDeathDrumroll;
Var() Sound DisabledAttemptSound;
Var() Sound AnnouncementSound;
Var() Sound DeathDrumrollSound;

NOW TO COPY AND PASTE THE (FUNCTIONS/EVENTS/ETC.) FOR THE 2ND MUTATOR

copy the code from BELOW THE VARIABLES in the 'SlothsZTarget' window
copy everything from this line down to the last } at bottom of 'SlothsZTarget'
 
//~start event Tick(float DeltaTime)
event Tick(float DeltaTime) 
{

After you copy all that code go to your mutator (MyMutator) and paste it to the very bottom of the code that is already there from the RunesChoices code.

REPLACE 'MyMutator' with your package name

After you have everything in order here
Click on your Mutator(MyMutator) in the right column to highlite it
go to the upper menubar to 'Script'
Click - Compile Changed Scripts

You should see all the code in your window change from a green color to some 'Green', 'LightBlue', & 'White' writting in it.

If you don't see this there will be an error code in the bar at the top of your mutator window.
It will describe what the issue is that needs to be fixed.

If it compiled the scripts without any errors...
click 'Save' --- bottom right column


YOU ARE FINISHED IMPORTING ALL THE CODE FROM THOSE (2) MUTATORS, THOUGH IF YOU NOTICE I HAVE CREATED CODE FOR ACTIVATING SOUNDS IN THE Z-TARGET SECTION. 
IF YOU CLOSE ALL WINDOWS IN THE EDITOR, AND GO TO THE RIGHT COLUMN.

Click on your Mutator(MyMutator) in the right column to highlite it
go to the very bottom of the right column to 'Defaults' click the 'Defaults' button

Now you should be looking at a gray window with different ' +Settings ' that you can expand

Locate the one with your mutator name
EX:+MyMutator

Click the ' + ' and youll see it expand and look like this:
DisabledAttemptSound		= Sound'OtherSnd.Various.logo01'
Sound AnnouncementSound		= Sound'OtherSnd.Instruments.gongroll01'
Sound DeathDrumrollSound	= Sound'OtherSnd.Various.bell01'

copy and paste these sounds into your mutator and thats it for the Editor game code!
All you have to do now is creat the config(MyMutator) file...


CREATING THE 'CONFIG FILE' TO MAKE YOUR MUTATOR FUNCTION IN GAME:
RECOMMENDED PROGRAM TO USE: NOTEPAD

Open Notepad and use this info to paste into the notepad window
REPLACE 'MyMutator' with your package name

[MyMutator.MyMutator]
// RUNES CONFIG
RunesRespawnTime=30
bRunes=True
bRemoveRuneOfPower=False
bRemoveRuneOfPowerRefill=False
bRemoveRuneOfStrength=False
bRemoveRuneOfStrengthRefill=False
bRemoveRuneOfHealth=False
// Z-TARGET CONFIG
bDisableZTarget=True
bDisabledAttempt=True
bAnnounceWarning=False
bAnnouncementSound=False
bDeathDrumroll=False

Save the file as:
MyMutator.ini        <----REPLACE 'MyMutator' with your package name & make sure to add the .ini at the end


CREATING THE '.int FILE' TO MAKE YOUR MUTATOR FUNCTION IN GAME:
RECOMMENDED PROGRAM TO USE: NOTEPAD

Open Notepad and use this info to paste into the notepad window

[Public]
Object=(Name=MyMutator.MyMutator,Class=Class,MetaClass=Engine.Mutator,Description="MyMutator")


REPLACE 'MyMutator' with your package name

Save the file as:
MyMutator.int        <----REPLACE 'MyMutator' with your package name & make sure to add the .int at the end




! ! ! !    F I N A L L Y    W E    A R E    D O N E    ! ! ! !
